Some vision systems have implemented dual stereo cameras to perform optical triangulation ranging. However, such dual stereo camera systems tend to be slow for real time applications and expensive and have poor distance measurement accuracy, when an object to be ranged lacks surface texture. Other vision systems have implemented a single camera and temporally encoded probing beams for triangulation ranging. In those systems, the probing beams are sequentially directed to different parts of the object through beam scanning or control of light source arrays. However, such systems are generally not suitable for high volume production and/or are limited in spatial resolution. In general, as such systems measure distance one point at a time, fast two-dimensional (2D) ranging cannot be achieved unless an expensive high-speed camera system is used.
A primary difficulty with using a single camera and simultaneously projected probing beams for triangulation is distinguishing each individual beam image from the rest of the beam images in the image plane. It is desirable to be able to distinguish each individual beam image as the target distance is measured through the correlation between the distance of the target upon which the beam is projected and the location of the returned beam image in the image plane. As such, when multiple beam images are simultaneously projected, one particular location on the image plane may be correlated with several beam images with different target distances. In order to measure the distance correctly, each beam image must be labeled without ambiguity.
In occupant protection systems that utilize a single camera in conjunction with a near IR light projector, to obtain both the image and the range information of an occupant of a motor vehicle, it is highly desirable to be able to accurately distinguish each individual beam image. In a typical occupant protection system, the near IR light projector emits a structured dot-beam matrix in the camera's field of view for range measurement. Using spatial encoding and triangulation methods, the object ranges covered by the dot-beam matrix can be detected simultaneously by the system. However, for proper range measurement, the system must first establish the relationship between the target range probed by each beam and its image location through calibration. Since this relationship is generally unique for each of the beams, while multiple beams are present simultaneously in the image plane, it is desirable to accurately locate and label each of the beams in the matrix.
Various approaches have been implemented or contemplated to accurately locate and label beams of a beam matrix. For example, manually labeling and locating the beams has been employed during calibration. However, manual locating and labeling beams is typically impractical in high volume production environments and is also error prone.
Another beam locating and labeling approach is based on the assumption that valid beams in a beam matrix are always brighter than those beams outside the matrix and the entire beam matrix is present in the image. This assumption creates strong limitations on a beam matrix projector and the sensing range of the system. Due to the imperfection of most projectors, it has been observed that some image noises can be locally brighter than some true beams. Further, desired sensing ranges for many applications result in partial images of the beam matrix being available.
What is needed is a technique that locates and labels beams of a beam matrix that is readily implemented in high-production environments.